package com.ys.entity.finance;
import java.math.BigDecimal;
import java.util.Date;
import javax.persistence.Table;
import com.alibaba.fastjson.annotation.JSONField;
import com.ys.annotation.YsField;
import com.ys.entity.base.BaseEntity;
/**
*/
@Table(name="TCW_WanliFinance", catalog="Id")
public class TcwWanliFinance extends BaseEntity<TcwWanliFinance> {

	@YsField(nameDataBase="Id", nameJava="id", typeDataBase="bigint")
	private Long id;
	@YsField(nameDataBase="DepositPlatformCode", nameJava="depositPlatformCode", typeDataBase="varchar")
	private String depositPlatformCode;
	@YsField(nameDataBase="ExchangeRateCode", nameJava="exchangeRateCode", typeDataBase="varchar")
	private String exchangeRateCode;
	@YsField(nameDataBase="SystemSum", nameJava="systemSum", typeDataBase="decimal")
	private BigDecimal systemSum;
	@YsField(nameDataBase="ApiSum", nameJava="apiSum", typeDataBase="decimal")
	private BigDecimal apiSum;
	@JSONField(format = "yyyy-MM-dd HH:mm:ss")
	@YsField(nameDataBase="AccountTime", nameJava="accountTime", typeDataBase="datetime")
	private Date accountTime;
	@YsField(nameDataBase="PurchaseType", nameJava="purchaseType", typeDataBase="tinyint")
	private Integer purchaseType;
	@YsField(nameDataBase="Status", nameJava="status", typeDataBase="tinyint")
	private Integer status;
	@JSONField(format = "yyyy-MM-dd HH:mm:ss")
	@YsField(nameDataBase="CreateTime", nameJava="createTime", typeDataBase="datetime")
	private Date createTime;
	@JSONField(format = "yyyy-MM-dd HH:mm:ss")
	@YsField(nameDataBase="UpdateTime", nameJava="updateTime", typeDataBase="datetime")
	private Date updateTime;

	public Long getId() {
		return id;
	}
	public TcwWanliFinance setId(Long id) {
		this.id = id;
		return this;
	}
	public String getDepositPlatformCode() {
		return depositPlatformCode;
	}
	public TcwWanliFinance setDepositPlatformCode(String depositPlatformCode) {
		this.depositPlatformCode = depositPlatformCode;
		return this;
	}
	public String getExchangeRateCode() {
		return exchangeRateCode;
	}
	public TcwWanliFinance setExchangeRateCode(String exchangeRateCode) {
		this.exchangeRateCode = exchangeRateCode;
		return this;
	}
	public BigDecimal getSystemSum() {
		return systemSum;
	}
	public TcwWanliFinance setSystemSum(BigDecimal systemSum) {
		this.systemSum = systemSum;
		return this;
	}
	public BigDecimal getApiSum() {
		return apiSum;
	}
	public TcwWanliFinance setApiSum(BigDecimal apiSum) {
		this.apiSum = apiSum;
		return this;
	}
	public Date getAccountTime() {
		return accountTime;
	}
	public TcwWanliFinance setAccountTime(Date accountTime) {
		this.accountTime = accountTime;
		return this;
	}
	public Integer getPurchaseType() {
		return purchaseType;
	}
	public TcwWanliFinance setPurchaseType(Integer purchaseType) {
		this.purchaseType = purchaseType;
		return this;
	}
	public Integer getStatus() {
		return status;
	}
	public TcwWanliFinance setStatus(Integer status) {
		this.status = status;
		return this;
	}
	public Date getCreateTime() {
		return createTime;
	}
	public TcwWanliFinance setCreateTime(Date createTime) {
		this.createTime = createTime;
		return this;
	}
	public Date getUpdateTime() {
		return updateTime;
	}
	public TcwWanliFinance setUpdateTime(Date updateTime) {
		this.updateTime = updateTime;
		return this;
	}

	public static TcwWanliFinance tcwWanliFinance(
		String depositPlatformCode,
		String exchangeRateCode,
		BigDecimal systemSum,
		BigDecimal apiSum,
		Date accountTime,
		Integer purchaseType,
		Integer status
			) {
		TcwWanliFinance entity = new TcwWanliFinance();
		entity.setDepositPlatformCode(depositPlatformCode);
		entity.setExchangeRateCode(exchangeRateCode);
		entity.setSystemSum(systemSum);
		entity.setApiSum(apiSum);
		entity.setAccountTime(accountTime);
		entity.setPurchaseType(purchaseType);
		entity.setStatus(status);
		return entity;
	}
}